package com.ruicar.afs.cloud.common.modules.dto.mq.loan.contractdto;

import com.alibaba.fastjson.annotation.JSONField;
import com.ruicar.afs.cloud.common.core.enums.AfsEnumDeserializer;
import com.ruicar.afs.cloud.common.core.enums.AfsEnumSerializer;
import com.ruicar.afs.cloud.common.modules.afscorebusiness.enums.AuthorizeWayEnum;
import com.ruicar.afs.cloud.common.modules.afscorebusiness.enums.VerStatusEnum;
import lombok.Data;

/**
 * @param
 * @author yk.Li
 * @description 合同银行卡信息
 * @date 2020/7/8
 */
@Data
public class ContractBankCardDTO {
    /**
     * 合同号码
     */
    @JSONField(name = "contractNo")
    private String contractNo;
    /**
     * 授权方式 电子授权/纸质授权
     */
    @JSONField(name = "authorizeWay", serializeUsing = AfsEnumSerializer.class, deserializeUsing = AfsEnumDeserializer.class)
    private AuthorizeWayEnum authorizeWay;
    /**
     * 开户银行
     */
    @JSONField(name = "bankCode")
    private String bankCode;
    /**
     * 开户银行支行
     */
    @JSONField(name = "bankBranch")
    private String bankBranch;
    /**
     * 电子联行号
     */
    @JSONField(name = "ebankCode")
    private String ebankCode;
    /**
     * 开户名
     */
    @JSONField(name = "accountName")
    private String accountName;
    /**
     * 开户卡号
     */
    @JSONField(name = "accountNo")
    private String accountNo;
    /**
     * 开户证件号码
     */
    @JSONField(name = "certNo")
    private String certNo;
    /**
     * 卡预留手机号
     */
    @JSONField(name = "bankPhone")
    private String bankPhone;
    /**
     * 签约验证码
     */
    @JSONField(name = "verCode")
    private String verCode;
    /**
     * 签约状态 枚举值
     */
    @JSONField(name = "verStatus", serializeUsing = AfsEnumSerializer.class, deserializeUsing = AfsEnumDeserializer.class)
    private VerStatusEnum verStatus;
    /**
     * 开户省份
     */
    @JSONField(name = "openProvince")
    private String openProvince;
    /**
     * 开户城市
     */
    @JSONField(name = "openCity")
    private String openCity;
    /**
     * 开户详细地址
     */
    @JSONField(name = "openAddress")
    private String openAddress;

}
